package com.team.coupon.util;

public class RedisConstants {
    public final static String BIZ_COUPON_KEY = "biz:coupon:";
    public final static String BIZ_USER_COUPON_KEY = "biz:user:coupon:";
    //优惠券秒杀活动秒杀前缀:完整格式为 seckill:coupon:yyyy-MM-dd
    public final static String BIZ_COUPON_SECKILL_KEY = "seckill:coupon:";

    // MODIFIED: 新增常量，存储所有存在优惠券数据的日期集合
    public static final String ALL_COUPON_DATES_KEY = "seckill:coupon:all_dates";
    // 日期转换格式 用于判断优惠券是否属于今天的秒杀活动
    public static final String DATE_FORMAT = "yyyy-MM-dd";
    // 日期转换格式 用于判断优惠券是否已经过期
    public static final String DATE_FORMAT_2 = "yyyy-MM-dd HH:mm:ss";
    // 缓存空值的标识
    public static final String CACHE_NULL_VALUE = "null";
    // 缓存空值的过期时间
    public static final Long CACHE_NULL_TTL = 2L;
    // 缓存用户id和优惠券id标记该用户是否已经抢过该优惠券
    public static final String USER_COUPON_SET_KEY = "user:coupon:set:";
    // 缓存用户id和优惠券id锁的key，用于防止用户重复抢券
    public static final String USER_COUPON_LOCK_KEY = "user:coupon:lock:";
    // 缓存查询当天秒杀优惠券锁的key，用于防止高并发，防止缓存击穿
    public static final String COUPON_SECKILL_LOCK_KEY = "coupon:seckill:lock:";
}
